Problem Note 38922: PROC SORT using a multi-threaded host sort may hang or produce incorrect ordering
In SAS® 9.1.3 SP4 running on Solaris SPARC servers, a PROC SORT step using the
multi-threaded SAS sort may hang or produce incorrect ordering
if a non-native collating sequence is specified, and if the starting position of a BY
variable within the input data set's program data vector (PDV) is greater than or equal
to 4096.
A non-native collating sequence is one specified using
either a procedure collating sequence option (EBCDIC, DANISH, SWEDISH, etc.),
or using either the SAS system option or procedure option SORTSEQ=.
A collating sequence is non-native if it does not match the collating sequence
associated with the session encoding.
You can determine whether the starting position of the BY variable within
the program data vector is greater than or equal to 4096 by running the following
program. Note that you must provide a data set name on the PROC CONTENTS statement:
proc contents
data=<data set name>
out=cont(keep=varnum name type npos length)
noprint;
run;
proc sort data=cont;
by npos;
run;
proc print data=cont;
var varnum name type npos length;
where npos >= 4096;
run;
If all of these conditions are met, then the problem may occur.
This behavior occurs only on Solaris SPARC servers.
Operating System and Release Information
SAS System | Base SAS | 64-bit Enabled Solaris | 9.1 TS1M3 SP4 | 9.2 TS2M3 |
*
For software releases that are not yet generally available, the Fixed
Release is the software release in which the problem is planned to be
fixed.
Type: | Problem Note |
Priority: | high |
Date Modified: | 2010-04-14 14:06:00 |
Date Created: | 2010-03-03 17:58:22 |